# -*- coding: UTF-8 -*-

"""
@author: 肥仔编程
@file:11.py
@time:2021-04-22
"""

"""
    模块和包
        1. 模块和包的使用
        2. 模块和包的作用
    
    注意： 
        Python 程序在执行的时候，首先在当前项目中查找是否存在相应的模块，不存在的时候在Python中查找，最终找到不到查看默认的路径
        自定义的模块名如果和已有的模块冲突，那么在导入的时候，后边的会将前边的覆盖
"""

"""
    模块使用
        import 模块名  模块名.功能()
        from 模块名 import 功能1, 功能2, 功能3, ……  功能名()
        from 模块名 import * 功能名() 将所有的功能导入 
        
        import 模块名 as 别名， 别名.功能() 使用别名的访问调用模块
        from 模块名 import 功能  as 别名， 别名() 使用别名使用模块中的功能
        
        __all__ 在模块中为这个变量指定一个列表，其中指定相应的功能，那么在使用 from 方式导入内容的时候就只可以导入列表中指定的，不再列表中的将无法导入
"""

"""
    包使用
        包可以将存在关系的模块组合在一起，也就是放在同一文件夹下
        包创建之后，自动生成 _init_.py 文件,通过它可以对包进行控制
        
        import 包名.模块名    包名.模块名.功能
        from 包名 import *   模块名.功能 
        
        在_init_.py文件中添加 __all__ 变量，指定模块列表，这样我们可以控制允许导入的功能模块 
"""